package cn.bonoon.entities;

/**
 * 即时任务的状态
 * @author jackson
 *
 */
public enum ImmediateTaskStatus {
	/** 未接受的任务，即在制定计划的时候就已经指派了任务，但处理任务的工作人员还没有接受、没开始任务 */
	UNACCEPTED {
		@Override
		public boolean editable() {
			return true;
		}
	},
	/** 工作人员接受了任务或看到了计划，创建并开始了任务 */
	STARTED {
		@Override
		public boolean editable() {
			return true;
		}
	},
	/** 任务已经结束，完成；可能是指定的结束时间到了自动结束的，也可以是工作人员自己选择完成任务 */
	END {
		@Override
		public boolean editable() {
			return false;
		}
	},
	/** 任务已经被取消 */
	CANCELED {
		@Override
		public boolean editable() {
			return false;
		}
	};
	
	public abstract boolean editable();
}
